package com.hw.one.dam2.service;

import com.hw.one.core.result.MsgResult;
import com.hw.one.dam2.entity.AIREntity;

import java.util.List;
import java.util.Map;

/**
 * 查询mongo库中空气质量数据
 * Created by 毛超然 on 2017/6/22.
 */

public interface IAirService {

    /**
     * 根据区域编码、时间和表名得到空气质量数据
     *
     * @param paraMap
     * @return
     * @throws Exception
     */

    List<AIREntity> findAirDataByRegionCodesAndTime(Map<String, Object> paraMap) throws Exception;

    /**
     * 根据站点编码、时间和表名得到空气质量数据
     *
     * @param paraMap
     * @return
     * @throws Exception
     */

    List<AIREntity> findAirDataBySiteCodesAndTime(Map<String, Object> paraMap) throws Exception;

    /**
     * 根据区域列表，空气质量因子、时间，组合eCharts图表数据结构
     *
     * @param paraMap
     * @return
     */
    MsgResult findAirQualityRegionDataContrastThrend(Map<String, Object> paraMap) throws Exception;

    /**
     * 根据站点列表，空气质量因子、时间，组合eCharts图表数据结构
     *
     * @param paraMap
     * @return
     */
    MsgResult findAirQualitySiteDataContrastThrend(Map<String, Object> paraMap);

    /**
     * 根据区域列表，空气质量因子、时间，组合eCharts图表数据结构
     *
     * @param paraMap
     * @return
     */
    MsgResult findAirQualitySingleRegionDataContrastThrend(Map<String, Object> paraMap) throws Exception;

    /**
     * 根据站点列表，空气质量因子、时间，组合eCharts图表数据结构
     *
     * @param paraMap
     * @return
     */
    MsgResult findAirQualitySingleSiteDataContrastThrend(Map<String, Object> paraMap);

    /**
     * 根据时间和表名得到5分钟空气质量原始数据
     *
     * @param paraMap
     * @return
     * @throws Exception
     */

    List<Map> findAirDataByTime(Map<String, Object> paraMap) throws Exception;
}
